Книги-online
Ch 18.htm
назад
|
содержание
|
вперед
Вычисляемые поля в отчете
К сожалению, невозможно
добавить вычисляемые поля в отчет простым составлением выражении из имеющихся
полей. Об их создании необходимо позаботиться еще на стадии построения окружения
данных отчета и иметь хотя бы общее представление о выражениях языка SQL для
выборки данных из таблиц базы данных.
Чтобы работать с вычисляемыми
полями, необходимо создать их в окружении данных отчета. Покажем это на конкретном
примере. Добавим в созданный нами отчет CustomerOrderReport поле, вычисляющее
стоимость заказа по следующей формуле: Сумма = количвство*Цена.
1. Откройте окно проектирования
окружения данных отчета.
2. Установите курсор на
источник данных OrderDetailcommand, нажмите правую кнопку мыши и выберите команду
Properties
(Свойства) контекстного меню. Откроется окно настройки источника
данных.
3. Поскольку в таблице
OrdSaled отсутствует необходимое нам вычисляемое поле, его нужно создать с помощью
выборки данных из этой таблицы. В окне настройки источника данных установите
опцию
SQL Statement
(Выражение SQL) и введите в поле текста выражение
для выборки полей таблицы OrdSaled и вычисляемого поля:
Select icdorder, icdgoods,
nquant, nunitprice, (nquant * nunitprice) As RowSummary from OrdSaled
4. Нажмите кнопку
Применить.
Если этого не выполнить, то не удастся восстановить связи с родительской и дочерней
таблицами, разрушенные при переходе в режим выборки.
5. Перейдите на вкладку
Relation
(Связь) и кнопкой
Add
(Добавить) восстановите связь с родительским
объектом.
6. Выйдите из окна настройки,
нажав кнопку
ОК.
7. Для восстановления
связи с дочерним объектом выберите объект orderGoods Command и откройте окно
Properties
для настройки. На вкладке
Relation
восстановите связь
и нажмите кнопку ОК.
Созданное таким образом
вычисляемое поле
RowSummary
может участвовать в отчете так же, как и
все остальные поля. Доработайте проектируемый отчет
CustomerOrderReport.
-
Добавьте в раздел заголовка
второй группы
Group Header (OrderConimand_Header)
объект RptLabel и
введите в свойство caption этого объекта
Сумма.
-
В раздел
Detail
добавьте объект RptTextBox и назовите его rptRowSummary. Установите для свойства
DataMember значение
OrderDetailCommand
и в свойстве DataFieid выберите
поле Rowsunimary. Для свойства DataFormat установите значение
Currency.
Запустите приложение и
выведите отчет в окно просмотра, нажав кнопку
Заказы.
Осталось добавить в отчет
итоговую сумму по заказу. Это можно сделать с помощью функционального поля отчета.
назад
|
содержание
|
вперед